package analizadorLexico.estados;

public class Estado01 implements Estado {

/*aplico el patron singleton para cada estado*/
	
	/*INSTANCE lo que hace es guardar la instancia de la clase*/
	private static Estado01 INSTANCE = null;    
	private Estado01(){}
	
    private synchronized static void createInstance() {
        if (INSTANCE == null) INSTANCE = new Estado01();
    }
    
    public static Estado getInstance() {
        if (INSTANCE == null) createInstance();
        return INSTANCE;
    }

	public void irASiguienteEstado() {
		
		char c=Contexto.getSiguienteCaracterYAvanzar();
		
		if(c=='\n')
		{
			Contexto.resetearLexema();
			Contexto.setEstadoActual(EstadoInicial.getInstance());
			Contexto.resetPosicionLinea();
			return;
		}
	}
}
